// pages/login/login.js
import {
	request
} from '../../utils/http';

let crypto = require("../../utils/crypto.js");
Page({

	/**
	 * 页面的初始数据
	 */
	data: {
		// 用户名
		userName: '',
		// 密码
		password: '',
		// 是否显示注册
		isRegister: false,
	},

	/**
	 * 生命周期函数--监听页面加载
	 */
	onLoad(options) {
		this.setData({
			isRegister: options.isRegister == 0
		})
	},

	/**
	 * 生命周期函数--监听页面初次渲染完成
	 */
	onReady() {

	},

	/**
	 * 生命周期函数--监听页面显示
	 */
	onShow() {

	},

	/**
	 * 生命周期函数--监听页面隐藏
	 */
	onHide() {

	},

	/**
	 * 生命周期函数--监听页面卸载
	 */
	onUnload() {

	},

	/**
	 * 页面相关事件处理函数--监听用户下拉动作
	 */
	onPullDownRefresh() {

	},

	/**
	 * 页面上拉触底事件的处理函数
	 */
	onReachBottom() {

	},

	/**
	 * 用户点击右上角分享
	 */
	onShareAppMessage() {

	},
	// 输入框的值
	getInputVal(e) {
		const type = e.currentTarget.dataset.type
		if (type == 'account') {
			this.setData({
				userName: e.detail.value
			})
		} else if (type == 'password') {
			this.setData({
				password: e.detail.value
			})
		}
	},

	// 登录/注册按钮
	handleLoginOrRegister() {
		const that = this;
		if (!this.data.userName.trim()) {
			wx.showToast({
				title: '请输入用户名',
				icon: 'none'
			})
			return
		}
		if (!this.data.password.trim()) {
			wx.showToast({
				title: '请输入密码',
				icon: 'none'
			})
			return
		}
		// console.log('111',crypto.encrypt(this.data.password))
		// return
		request({
			url: this.data.isRegister ? '/user/register' : '/login',
			method: "POST",
			data: {
				userName: this.data.userName,
				passWord: crypto.encrypt(this.data.password)
			}
		}).then(res => {
			if (this.data.isRegister) {
				if (res.expiresIn) {
					that.setData({
						userName: '',
						password: ''
					})
					that.setData({
						isRegister: !that.data.isRegister
					})
					wx.showToast({
						title: res,
						icon: '注册成功 请登录'
					})
				} else {
					wx.showToast({
						title: res,
						icon: 'none'
					})
				}
			} else {
				wx.setStorageSync('token', res.accessToken)
				wx.setStorageSync('username', this.data.userName)
				if (res.expiresIn) {
					wx.switchTab({
						url: '../../pages/index/index',
					})
				} else {
					wx.showToast({
						title: res,
						icon: 'none'
					})
				}
			}
		})
	},

	/**
	 * 切换注册/登录
	 */
	handleChangeShowType() {
		let str = this.data.isRegister ? '1' : '0'
		wx.redirectTo({
			url: '/pages/login/login?isRegister=' + str
		})
	},
})